package math.komplex;
public interface Matrix // quadratische Matrix deren Elemente komplexe Zahlen sind
{
	public int getDimension();
	public void setElement(int k,int l,Komplex z) throws Exception; // 0 <= k,l < getDimension
	public Komplex getElement(int k,int l) throws Exception; // 0 <= k,l < getDimension
	public Matrix add(Matrix m1,Matrix m2) throws Exception; 
	public Matrix mult(Komplex z,Matrix m);
	public Matrix mult(Matrix m1,Matrix m2) throws Exception;
	public Matrix kmult(Matrix m1,Matrix m2); // Kronecker Produkt
	public Komplex Spur(Matrix m);
	public String toString();
	public Matrix copy();
	public Matrix getPauliMatrix(int k) throws Exception; // k=0,1,2,3
}
